package day05;

/**
 * @author Xiao
 * @date 2021/7/5
 */
public class Text01 {
    /*
        需求
            求三个整数的最大值

        步骤
            1.定义三个int类型的变量 (已完成)
            2.定义方法, 可以计算出三个数的最大值
            3.在主方法中调用方法
            4.打印结果
     */
    public static void main(String[] args) {
        //定义三个int类型的变量
        int a = 10;
        int b = 8;
        int c = 15;

        //在主方法中调用方法, 得到 a b c 这三个数的最大值
        int max = getMax(a, b, c);
        int max1 = getMax1(a, b, c);
        int max2 = getMax2(a, b, c);
        int max3 = getMax3(a, b, c);
        int max4 = getMax4(a, b, c);
        int max5 = getMax5(a, b, c);
        //打印结果
        System.out.println(max);
        System.out.println(max1);
        System.out.println(max2);
        System.out.println(max3);
        System.out.println(max4);
        System.out.println(max5);
        //定义方法, 可以计算出三个数的最大值
        //分别使用 if 的第一种、第二种、第三种 以及 三元运算符做一遍
    }

    private static int getMax5(int a, int b, int c) {
        int max = a;
        if(a >= b) {
            if (a >= c) {
                max = a;
            } else {
                max = c;
            }
        } else {
            if (b >= c) {
                max = b;
            }
        }
        return max;
    }

    private static int getMax4(int a, int b, int c) {
        if(a < b) {
            a = b;
        }
        if (a < c) {
            a = c;
        }
        return a;
    }

    private static int getMax3(int a, int b, int c) {
        int max = a;
        if (b >= a && b >= c) {
            max = b;
        } else {
            max = a >= c ? a : c;
        }
        return max;
    }

    private static int getMax2(int a, int b, int c) {
        int max = 0;
        if (a >= b && a >= c) {
            max = a;
        }
        if (b >= a && b >= c) {
            max = b;
        }
        if (c >= a && c >= b) {
            max = c;
        }

        return max;
    }

    private static int getMax1(int a, int b, int c) {
        int max = 0;
        if (a >= b && a >= c) {
            max = a;
        } else if(b >= a && b >= c){
            max = b;
        } else {
            max = c;
        }
            return max;
    }

    private static int getMax(int a, int b, int c) {
        int temp = a >= b ? a : b;
        int max = temp >= c ? temp : c;
        return max;
    }
}
